﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.Serialization;
using Amazon.Route53;

namespace Amazon.Route53.DataContracts
{
    [DataContract(Name = "ListHostedZonesResponse"
    ,Namespace =Constants.Namespace )]
    public class HostedZonesList
    {
        /// <summary>
        /// Indicates the marker used when generating this list of hosted zones. 
        /// The results include hosted zones in the list that occur after the marker. 
        /// </summary>
        [DataMember(Order = 0, EmitDefaultValue = false)]
        public String Marker { get; set; }
      
        /// <summary>
        /// Hosted Zones List
        /// </summary>
        [DataMember(Name="HostedZones",Order=1)]
        public HostedZone[] HostedZones { get; set; }

        /// <summary>
        /// A flag indicating whether there are more hosted zones to be listed. 
        /// If your results were truncated, you can make a follow-up pagination request 
        /// by using the Marker request.
        /// </summary>
        [DataMember(Order=2)]
        public Boolean IsTruncated { get; set; }

        /// <summary>
        /// The maximum number of hosted zones you requested.
        /// </summary>
        [DataMember(Order=3)]
        public int MaxItems { get; set; }

        /// <summary>
        /// ndicates the location from which to continue listing hosted zones. 
        /// If you make a subsequent request to ListHostedZones and supply the 
        /// NextMarker value as the marker parameter, the results will include hosted zones in the list that occur after NextMarker. 
        /// This provides a way to list all hosted zones associated with your account.
        /// This element is present only if IsTruncated is true.
        /// </summary>
        [DataMember(EmitDefaultValue=false ,IsRequired =false )]
        public string NextMarker { get; set; }

         
    } 
}
